package com.zjcode.cdcer.service;

import com.chinatechstar.component.commons.supports.PageData;
import com.zjcode.cdcer.model.basic.JsonObj;
import com.zjcode.cdcer.service.fallback.CerSysteminitImportInfoServiceFallback;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;

@FeignClient(value = "zjcode-chronic-disease-cancer-server", fallback = CerSysteminitImportInfoServiceFallback.class)
public interface CerSysteminitImportInfoService {

    @PostMapping("/cdcerserver/v1/cerSysteminitImportInfo/listAllTableData")
    JsonObj listAllTableData(@RequestBody PageData pageData);

    @PostMapping("/cdcerserver/v1/cerSysteminitImportInfo/batchDeletion")
    JsonObj batchDeletion(@RequestBody PageData pageData);

    @PostMapping("/cdcerserver/v1/cerSysteminitImportInfo/oneClickDelete")
    JsonObj oneClickDelete(PageData pageData);

    @PostMapping("/cdcerserver/v1/cerSysteminitImportInfo/queryAllExportData")
    JsonObj queryAllExportData(@RequestBody PageData pageData);

    @PostMapping("/cdcerserver/v1/cerSysteminitImportInfo/addData")
    public JsonObj addData(@RequestBody PageData pageData);

    @PostMapping("/cdcerserver/v1/cerSysteminitImportInfo/waitingFollowUpPersonnel")
    JsonObj waitingFollowUpPersonnel(@RequestBody PageData pageData);

    @PostMapping("/cdcerserver/v1/cerSysteminitImportInfo/newQueryAllExportData")
    JsonObj newQueryAllExportData(@RequestBody PageData pageData);

    @GetMapping("/cdcerserver/v1/cerSysteminitImportInfo/del")
    JsonObj del(@RequestParam String id);

    @PostMapping("/cdcerserver/v1/cerSysteminitImportInfo/imageEscalation")
    JsonObj imageEscalation(@RequestBody PageData pageData);

    @PostMapping("/cdcerserver/v1/cerSysteminitImportInfo/editPhysicalExaminationInfo")
    JsonObj editPhysicalExaminationInfo(PageData pageData);

    @GetMapping("/cdcerserver/v1/cerSysteminitImportInfo/getPhysicalExaminationByInfoId")
    JsonObj getPhysicalExaminationByInfoId(@RequestParam String infoId);

    @GetMapping("/cdcerserver/v1/cerSysteminitImportInfo/getAreaByUserId")
    JsonObj getAreaByUserId(@RequestParam String userId);
}
